使用材质类型

材质类型定义材质的属性类型。您可以通过调整材质类型定义的材质属性值,设置材质的外观。每种材质类型都有一个顶点着色器和片段着色器,它们设定了材质可用的属性类型。

Kanzi Studio 提供模板工程,其中包含来自位于 <KanziInstallation>/Studio/Asset LibraryKanzi Studio Asset Library 的一组默认材质类型和着色器。创建新的 Kanzi Studio 工程时,您可以根据其提供的材质类型从不同的工程模板中选择:

您可以:

为您的工程添加材质类型

您可以通过以下方式为您的工程添加材质类型:

修改默认的冯氏 (Phong) 材质类型

默认的 FragmentPhongVertexPhong 材质类型支持以下属性:

材质类型 (Material type) 基色纹理 标准图纹理 反射立方体 变形 蒙皮
FragmentPhongVertexPhong
         
FragmentPhongCubeVertexPhongCube
    x    
VertexPhongMorph       x  
FragmentPhongSkinnedVertexPhongSkinned         x
FragmentPhongTexturedVertexPhongTextured x        
FragmentPhongTexturedCubeVertexPhongTexturedCube x   x    
FragmentPhongTexturedCubeNormalMap x x x    
VertexPhongTexturedMorph x     x  
FragmentPhongTexturedNormalMap x x      
FragmentPhongTexturedSkinnedVertexPhongTexturedSkinned x       x
           

要修改 VertexPhongFragmentPhong 材质类型:

  1. 请为您的工程选择或添加一个默认的 VertexPhongFragmentPhong 材质类型。请参阅为您的工程添加材质类型
    例如,在 素材库 (Library) > 材质和纹理 (Materials and Textures) > 材质类型 (Material Types) 中,选择 VertexPhong 材质类型。
  2. 预处理器定义 (Preprocessor Defines) 属性中的属性 (Properties) 中,设置材质类型的属性。
    您只能将这种方法用于 FragmentPhongVertexPhong 材质类型。要为其他材质类型修改属性,您必须手动编辑着色器。请参阅编辑着色器
    您可以设置以下 预处理器定义 (Preprocessor Defines)例如,将 KANZI_SHADER_USE_BASECOLOR_TEXTURE 的值设置为 1 并按下 Enter 键。
  3. Uniforms 属性中的属性 (Properties) 中,Kanzi Studio 会自动更新 uniform 数组,如果缺少任何 uniform 源类型,Kanzi Studio 会使用红色类型标记这些类型。
    属性 (Properties) 中的属性类型 (Property Types) 下方,点击 同步 uniform (Sync with Uniforms),以便为使用材质类型的材质添加缺少的属性。

为材质类型添加属性

为材质类型添加属性可以使其适合您的需求。您可以使用您为了加快和便于在工程中设置材质的外观而自定义或创建的材质类型。为材质类型添加属性时,Kanzi Studio 会将属性添加到使用材质类型的所有材质。

要为材质类型添加属性:

  1. 素材库 (Library) > 材质和纹理 (Materials and Textures) > 材质类型 (Material Types) 中,选择要为其添加属性的材质类型。
  2. 属性 (Properties) 中的输入 (Input) 部分中,从下拉菜单中选择要添加的属性。
  3. 素材库 (Library) > 资源文件 (Resource Files) > 着色器 (Shaders) 中,双击要在其中使用属性的着色器,以便将其在 着色器源编辑器 (Shader Source Editor) 中打开。
  4. 为着色器代码添加属性,然后保存着色器。您可以点击着色器源编辑器 (Shader Source Editor) 中的 Uniforms 按钮,以使用代码片段来声明 uniform。请参阅编辑着色器

重复使用材质类型

当在您的 Kanzi Studio 工程中创建材质类型时,您可以在另一个 Kanzi Studio 工程中重复使用材质类型。

要重复使用材质类型:

  1. 保存材质类型:
    1. 素材库 (Library) > 材质和纹理 (Materials and Textures) > 材质类型 (Material Types) 中,右键点击要在另一个工程中使用的材质类型,然后选择 保存材质类型至磁盘 (Save Material Type to Disk)
    2. 选择用于保存材质类型的名称和位置,然后点击 保存 (Save)
  2. 复用该材质类型:
    1. Kanzi Studio 中打开要加载保存的材质类型的工程。
    2. 素材库 (Library) 中右键点击 材质和纹理 (Materials and Textures),选择 从磁盘加载材质类型 (Load Material Type From Disk),前往包含保存材质类型的目录,选择该类型并点击 打开 (Open)
      Kanzi Studio 添加材质类型并使用该材质类型创建材质。您可以使用相同的材质类型创建其他材质。请参阅使用材质

材质类型 (Material Type)属性类型

要查看材质类型可用属性类型的完整列表,请参阅Material type

另请参阅

使用材质

材质类型和材质

编辑着色器

使用变形 (Morph) 资源

使用蒙皮网格

为材质类型设置光源数量